---
title: "DB Authentication"
---

For applications requiring user management and authentication, Keep supports basic authentication with username and password.

<Frame
    width="75"
  height="150">
  <img height="10" src="/images/dbauth.png" />
</Frame>


### When to Use

- **Self-Hosted Deployments:** When you're deploying Keep for individual use or within an organization.
- **Enhanced Security:** Provides a simple yet effective layer of security for your Keep instance.

### Setup Instructions

To start Keep with DB authentication, set the following environment variables:

| Environment Variable | Description | Required | Frontend/Backend | Default Value |
|--------------------|:-----------:|:--------:|:----------------:|:-------------:|
| AUTH_TYPE | Set to 'DB' for database authentication | Yes | Both | - |
| KEEP_JWT_SECRET | Secret for JWT token generation | Yes | Backend | - |
| KEEP_DEFAULT_USERNAME | Default admin username | No | Backend | admin |
| KEEP_DEFAULT_PASSWORD | Default admin password | No | Backend | admin |
| KEEP_FORCE_RESET_DEFAULT_PASSWORD | Override the current admin password | No | Backend | false |

### Example configuration

Use the `docker-compose-with-auth.yml` for an easy setup, which includes necessary environment variables for enabling basic authentication.
